unit cMeowUtils;

interface
    uses
    Winapi.Windows,
    System.Classes,
    cMeow_de,
    System.SysUtils;
{-----------------------------------------------------------------------------}
function cGetSignatureName(const FileName:  PWideChar):PWideChar;stdcall;
procedure cNowDateTime(var Dt:  cDateTime);stdcall;
function cZwDeleteFIle(const FileName: PWideChar): Boolean;stdcall;
function cFindProcess(const Process: PWideChar):DWORD;stdcall;
function cKillProcessById(const PID:  DWORD):Boolean;stdcall;
function cReadFileSize(const FileName: PWideChar):DWORD;stdcall;
function cCreateSearch:cSearch;stdcall;
function cIsInclusionDigit(const S: PWideChar):Boolean;stdcall;
procedure cReadHardDriveInfo(var HDI: THardDriveInfo);stdcall;
function cCreateProcessInstallLibrary:cProcessInstallLibrary;stdcall;
function cIs64BitPorcess(const PID:  DWORD):Boolean;stdcall;
function cIs64BitOS:Boolean; stdcall;
function cCreateService:cService;stdcall;
function cCreateMonitor:cMonitor;stdcall;
function cCreateDownloadFile:cDownloadFile;stdcall;
implementation
{$IFDEF CPUX64}
const DLLNAME = 'cMeowUtils64.dll';
{$ELSE}
const DLLNAME = 'cMeowUtils32.dll';
{$ENDIF}
//-----------------------------------------------------------------------------
function cGetSignatureName(const FileName:  PWideChar):PWideChar;
external DLLNAME Name 'GetSignatureName';
procedure cNowDateTime(var Dt:  cDateTime);
external DLLNAME Name 'NowDateTime';
function cZwDeleteFIle(const FileName: PWideChar): Boolean;
external DLLNAME Name 'ZwDeleteFIle';
function cFindProcess(const Process: PWideChar):DWORD;
external DLLNAME Name 'FindProcess';
function cKillProcessById(const PID:  DWORD):Boolean;
external DLLNAME Name 'KillProcessById';
function cReadFileSize(const FileName: PWideChar):DWORD;
external DLLNAME Name 'ReadFileSize';
function cCreateSearch:cSearch;
external DLLNAME Name 'CreateSearch';
function cIsInclusionDigit(const S: PWideChar):Boolean;
external DLLNAME Name 'IsInclusionDigit';
procedure cReadHardDriveInfo(var HDI: THardDriveInfo);
external DLLNAME Name 'ReadHardDriveInfo';
function cCreateProcessInstallLibrary:cProcessInstallLibrary;
external DLLNAME Name 'CreateProcessInstallLibrary';
function cIs64BitPorcess(const PID:  DWORD):Boolean;
external DLLNAME Name 'Is64BitPorcess';
function cIs64BitOS:Boolean;
external DLLNAME Name 'Is64BitOS';
function cCreateService:cService;
external DLLNAME Name '_CreateService';
function cCreateMonitor:cMonitor;
external DLLNAME Name 'CreateMonitor';
function cCreateDownloadFile:cDownloadFile;
external DLLNAME Name 'CreateDownloadFile';
end.
